SUPPORT / SAMPLES & SAS NOTES
 

Support

Problem Note 37132: %SYSFUNC may cause an error if part of the function name is a macro variable

DetailsAboutRate It
Using a SAS function within %SYSFUNC, where part of the function name 
is a macro variable, may cause an error.
 
Here is an example:

  %let name=s;
  %put %sysfunc(ab&name(-1));

One possible error message from the above could be:

  ERROR: Expected open parenthesis after macro function name not found.

A possible work-around would be to place the entire function within a macro 
variable.

Here is an example:

  %let name=abs;
  %put %sysfunc(&name(-1));



Operating System and Release Information

Product FamilyProductSystemSAS Release
ReportedFixed*
SAS SystemBase SASz/OS9.2 TS1M09.2 TS2M3
Microsoft® Windows® for 64-Bit Itanium-based Systems9.2 TS1M09.2 TS2M3
Microsoft Windows Server 2003 Datacenter 64-bit Edition9.2 TS1M09.2 TS2M3
Microsoft Windows Server 2003 Enterprise 64-bit Edition9.2 TS1M09.2 TS2M3
Microsoft Windows XP 64-bit Edition9.2 TS1M09.2 TS2M3
Microsoft® Windows® for x649.2 TS1M09.2 TS2M3
Microsoft Windows Server 2003 Datacenter Edition9.2 TS1M09.2 TS2M3
Microsoft Windows Server 2003 Enterprise Edition9.2 TS1M09.2 TS2M3
Microsoft Windows Server 2003 Standard Edition9.2 TS1M09.2 TS2M3
Microsoft Windows Server 20089.2 TS1M09.2 TS2M3
Microsoft Windows XP Professional9.2 TS1M09.2 TS2M3
Windows Vista9.2 TS1M09.2 TS2M3
64-bit Enabled AIX9.2 TS1M09.2 TS2M3
64-bit Enabled HP-UX9.2 TS1M09.2 TS2M3
64-bit Enabled Solaris9.2 TS1M09.2 TS2M3
HP-UX IPF9.2 TS1M09.2 TS2M3
Linux9.2 TS1M09.2 TS2M3
Linux for x649.2 TS1M09.2 TS2M3
OpenVMS on HP Integrity9.2 TS1M09.2 TS2M3
Solaris for x649.2 TS1M09.2 TS2M3
* For software releases that are not yet generally available, the Fixed Release is the software release in which the problem is planned to be fixed.